The present invention relates generally to the field of circuits and systems which receive information from a limited number of output pins and attempt to effectively expand this information so as to drive a larger number of output devices which may, in general, have to be separately controlled. The present invention has particular application with regard to effectively expanding the number of dedicated timed output pins provided on a microprocessor so that the microprocessor can effectively control a large number of output devices which may have to be independently controlled. A particular application of the present invention is with respect to utilizing two output ports of a microprocessor, such as a 68HC11 manufactured by Motorola, so as to implement an automotive control system which can independently control four, six or eight fuel injectors. Then other timed output ports of the microprocessor can be used to control other engine control functions such as spark/dwell.
Several previous microprocessors have been utilized for automotive engine control, such as the the 68HC11 and 6801 Motorola microprocessors. Some prior microprocessor systems constructed command words based on a specific time event occurrence, and then used these command words to address various output devices and implement the proper state changes. The time occurrence of these state changes was determined in accordance with the transmission of the command word which was created. Timing resolution (the ability to rapidly provide for changes in data) for some of these systems suffered because of the inherent delay in producing the command word, serially sending it and then subsequently decoding it so as to control the various outputs. Thus rapid updating of information suffered since, in general, change could not occur sooner than the time to create, transmit and decode a command word.
Some systems utilized a high resolution timing signal at a dedicated output port of a microprocessor to directly control the time occurrence of a state change of an output signal. These prior systems recognized the need for providing a large number of high resolution (accurate) timed output signals so as to drive a corresponding number of engine control devices, such as fuel injectors. However, these prior systems provided a limited number of dedicated microprocessor output pins at which a high resolution timed output signal could be produced. These dedicated output pins are in addition to the large number of output pins which comprise the data bus and address bus utilized by the microprocessor to send low resolution (with respect to time occurrence) address and data information to various different devices. Thus, if separate, precise independent control of, for example, four, six or eight fuel injectors were required, prior systems would attempt to utilize four, six or eight dedicated output pins of the microprocessor, each separately controlling a different fuel injector. This is fine, unless you run out of dedicated high resolution output pins on the microprocessor, and no matter how many such pins are provided, there will always be some application which requires more dedicated output pins than are available.
Thus, there is a need for expanding the output capabilities of a microprocessor such that a larger number of high resolution timed outputs can be provided from one dedicated, high resolution timed output of the microprocessor. This should be accomplished in a cost effective manner such that substantial additional hardware is not required. Also, excessive time-consuming software programming and execution time should not be required since this would degrade the overall system response by requiring the microprocessor to make an excessive amount of calculations prior to providing a desired high resolution timed output signal.
The present invention addresses these problems and is believed to overcome them by providing a circuit configuration which readily expands the effective, high resolution output signals provided by a microprocessor in a cost effective manner without any substantial degradation in timing resolution. This is accomplished while permitting independent control of each of the expanded output signals which are produced.